package com.xique.park.service.service;

import com.xique.common.core.web.domain.PageResult;
import com.xique.park.bean.domain.client.ParkClientUser;
import com.xique.park.bean.request.client.ClientUserListRequest;

import java.util.List;

/**
 * 岗亭用户Service接口
 *
 * @author caogq
 * @date 2021-07-20
 */
public interface IParkClientUserService {

    /**
     * 查询岗亭用户
     *
     * @param id 岗亭用户ID
     * @return 岗亭用户
     */
    ParkClientUser selectParkClientUserById(Long id);

    /**
     * 查询岗亭用户列表
     *
     * @param parkClientUser 岗亭用户
     * @return 岗亭用户集合
     */
    List<ParkClientUser> selectParkClientUserList(ParkClientUser parkClientUser);

    /**
     * 新增岗亭用户
     *
     * @param parkClientUser 岗亭用户
     * @return 结果
     */
    int insertParkClientUser(ParkClientUser parkClientUser);

    /**
     * 修改岗亭用户
     *
     * @param parkClientUser 岗亭用户
     * @return 结果
     */
    int updateParkClientUser(ParkClientUser parkClientUser);

    /**
     * 批量删除岗亭用户
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    int deleteParkClientUserByIds(String ids);

    /**
     * 删除岗亭用户信息
     *
     * @param id 岗亭用户ID
     * @return 结果
     */
    int deleteParkClientUserById(Long id);

    /**
     * 分页查询岗亭用户
     *
     * @param pageNum  当前页
     * @param pageSize 每页数量
     * @param id       岗亭用户ID
     * @param parkId   车场id
     * @return 查询结果
     */
    PageResult selectPageList(Integer pageNum, Integer pageSize, Long id, Long parkId);

    /**
     * 查询岗亭用户列表
     *
     * @param request /
     * @return java.util.List<com.xique.park.bean.domain.client.ParkClientUser>
     * @author shd
     * @date 2022/3/19 13:44
     */
    List<ParkClientUser> selectParkClientUserListV1(ClientUserListRequest request);

    /**
     * 根据登录名获取信息
     *
     * @param loginName 登录名
     * @return 信息
     */
    List<ParkClientUser> selectParkClientUserByLoginName(String loginName);
}
